/*
 * InterfaceExplica.java
 *
 * $Id: InterfaceExplica.java,v 1.34 2009-10-26 13:29:41 mario Exp $
 *
 * Written by: Mario García García <mario@imagos.es>
 * (c) 2007 Fundación Centro Tecnológico de la Carne
 */
package org.ceteca.explica.core;

import java.awt.Dimension;

/**
 * Public interface with the constant definitions of the application configuration.
 */
public class InterfaceExplica {
	/**
	 * Port of the RMI registry
	 */
	public static final int RMI_REGISTRY_PORT = 1099;

	/**
	 * Port of the RMI installer remote object
	 */
	public static final int RMI_INSTALLER_EXPORT_PORT = 40005;
	
	/**
	 * JNDI name of the RMI installer remote object
	 */
	public static final String JNDI_INSTALLER_EXPORT_NAME = "rmi://localhost/org/ceteca/explica/Installer";
	
	/**
	 * Port of the RMI warehouse manager remote object
	 */
	public static final int RMI_WAREHOUSE_MANAGER_EXPORT_PORT = 40006;
	
	/**
	 * JNDI name of the RMI warehouse manager remote object
	 */
	public static final String JNDI_WAREHOUSE_MANAGER_EXPORT_NAME = "rmi://localhost/org/ceteca/explica/WarehouseManager";
	
	/**
	 * Port of the RMI common objects manager remote object
	 */
	public static final int RMI_COMMON_MANAGER_EXPORT_PORT = 40007;
	
	/**
	 * Initial size of the stack of entity views GUI components.
	 */
	public static final int EXPLICA_INIT_ENTITY_VIEW_SIZE = 10;
	
	
	
	/**
	 * Port of the RMI PartnersManager remote Object 
	 */
	public static final int RMI_PARTNERS_MANAGER_EXPORT_PORT = 40008;
	
	
	/**
	 * JNDI name of the RMI common objects manager remote object
	 */
	public static final String JNDI_COMMON_MANAGER_EXPORT_NAME = "rmi://localhost/org/ceteca/explica/CommonManager";
	public static final String JNDI_PARTNERS_MANAGER_EXPORT_NAME = "rmi://localhost/org/ceteca/explica/PartnersManager";
	
	
	
	
	
	/**
	 * JNDI name of the RMI tracer remote object
	 */
	public static final String JNDI_TRACER_EXPORT_NAME = "rmi://localhost/org/ceteca/explica/Tracer";
	
	/**
	 * Local path to the resources installed versions properties file
	 */
	public static final String INSTALLER_LOCAL_RESOURCES_PROPERTIES_FILE = "resources/resources";
	
	/**
	 * System's property name that stores the file separator used in the system 
	 */
	public static final String FILE_SEPARATOR_PROPERTYNAME = "file.separator";
	
	/**
	 * System's property name that stores the path separator used in the system 
	 */
	public static final String PATH_SEPARATOR_PROPERTYNAME = "path.separator";
	
	/**
	 * System's default classpath
	 */
	public static final String DEFAULT_CLASSPATH = "modules/:resources/";
	
	
    /* ----------------------------------------------------------------------
     *          DEFAULT DATETIME FORMAT PATTERNS 
     * ---------------------------------------------------------------------- */
    /** Pattern for short date format */
    public static final String CONST_SHORT_DATE_PATTERN = "dd/MM/yyyy";
    
    /** Pattern for long date format */
    public static final String CONST_LONG_DATE_PATTERN = "dd ' de ' MMMMMMMM ' de ' yyyy";
    
    /** Pattern for date and time format */
    public static final String CONST_DATETIME_PATTERN = "dd/MM/yyyy hh:mm";
    
    /* ----------------------------------------------------------------------
     *          NAME OF MODULE CONFIGURATION PROPERTIES 
     * ---------------------------------------------------------------------- */
    /** Name of the module name configuration property */
    public static final String CONST_MODULE_NAME = "module.name";
    /** Name of the module main class configuration property */
    public static final String CONST_MODULE_MAINCLASS = "module.mainClass";
    /** Name of the module main method configuration property */
    public static final String CONST_MODULE_MAINMETHOD = "module.mainMethod";
    /** Name of the module icon configuration property */
    public static final String CONST_MODULE_ICON = "module.icon";
    /** Name of the module log configuration file property */
    public static final String CONST_MODULE_LOG_CONFIGFILE = "module.log.configFile";
    /** Name of the module log category configuration property */
    public static final String CONST_MODULE_LOG_CATEGORY = "module.log.category";
    /** Name of the module result messages file path configuration property */
    public static final String CONST_MODULE_MSG_PROPFILE = "module.msg.propFile";
    
    /* ----------------------------------------------------------------------
     *          Constants with the paths to the local resources
     * ---------------------------------------------------------------------- */
    /**
     * Path to the explica initialization interface glade file.
     */
    public static final String EXPLICA_INIT_GLADE_PATH = "/org/ceteca/explica/client/gui/explicainit.glade";
    /**
     * Key name of the explica initialization GUI.
     */
    public static final String EXPLICA_INIT_GLADE_NAME = "ExplicaInit";
    
    /**
     * Path to the explica core interface glade file.
     */
    public static final String EXPLICA_CORE_GLADE_PATH = "/org/ceteca/explica/client/gui/explicamain.glade";
    /**
     * Key name of the explica main GUI.
     */
    public static final String EXPLICA_CORE_GLADE_NAME = "ExplicaMain";
    /**
     * Path to the explica login interface glade file.
     */
    public static final String EXPLICA_LOGIN_GLADE_PATH = "/org/ceteca/explica/client/gui/explicalogin.glade";
    /**
     * Key name of the explica login GUI.
     */
    public static final String EXPLICA_LOGIN_GLADE_NAME = "ExplicaLogin";
    /**
     * Path to the explica module interface glade file.
     */
    public static final String EXPLICA_MODULE_GLADE_PATH = "/org/ceteca/explica/client/gui/explicamodule.glade";
    /**
     * Key name of the explica module GUIs.
     */
    public static final String EXPLICA_MODULE_GLADE_NAME = "ExplicaModule";
    /**
     * Path to the explica entity interface glade file.
     */
    public static final String EXPLICA_ENTITY_GLADE_PATH = "/org/ceteca/explica/client/gui/explicaentity.glade";
    /**
     * Key name of the explica entity GUIs.
     */
    public static final String EXPLICA_ENTITY_GLADE_NAME = "ExplicaEntity";
    /**
     * Path to the explica detail entity interface glade file.
     */
    public static final String EXPLICA_DETAIL_ENTITY_GLADE_PATH = "/org/ceteca/explica/client/gui/explicadetailentity.glade";
    /**
     * Key name of the explica detail entity GUIs.
     */
    public static final String EXPLICA_DETAIL_ENTITY_GLADE_NAME = "ExplicaDetailEntity";
    /**
     * Key name of the explica subentity GUIs.
     */
    public static final String EXPLICA_SUBENTITY_GLADE_NAME = "#subEntity#";
    /**
     * Path to the explica subentity selection interface glade file.
     */
    public static final String EXPLICA_SUBENTITY_SELECTION_GLADE_PATH = "/org/ceteca/explica/client/gui/explicaentityselection.glade";
    /**
     * Key name of the explica subentity selection GUIs.
     */
    public static final String EXPLICA_SUBENTITY_SELECTION_GLADE_NAME = "ExplicaSubentitySelection";
    /**
     * Path to the explica subentity multiple selection interface glade file.
     */
    public static final String EXPLICA_SUBENTITY_MULTISELECTION_GLADE_PATH = "/org/ceteca/explica/client/gui/explicaentitymultiselection.glade";
    /**
     * Key name of the explica subentity multiple selection GUIs.
     */
    public static final String EXPLICA_SUBENTITY_MULTISELECTION_GLADE_NAME = "ExplicaSubentityMultiSelection";
    
	public static final String EXPLICA_EDIT_PRICELISTLINE_GLADE_PATH = "/org/ceteca/explica/client/gui/common/explicapricelistline.glade";
    
    /**
     * Key name of the explica entity edition GUIs.
     */
    public static final String EXPLICA_EDIT_GLADE_NAME = "ExplicaEdit";
    /**
     * Path to the explica barcode type edition interface glade file.
     */
    public static final String EXPLICA_EDIT_BARCODETYPE_GLADE_PATH = "/org/ceteca/explica/client/gui/common/explicabarcodetype.glade";
    /**
     * Path to the explica VAT type edition interface glade file.
     */
    public static final String EXPLICA_EDIT_VATTYPE_GLADE_PATH = "/org/ceteca/explica/client/gui/common/explicavattype.glade";

    
	//public static final String EXPLICA_EDIT_CONTACT_GLADE_PATH = "/org/ceteca/explica/client/gui/common/explicacontact.glade";
    
	public static final String EXPLICA_EDIT_CURRENCY_GLADE_PATH = "/org/ceteca/explica/client/gui/common/explicacurrency.glade";
    
	public static final String EXPLICA_EDIT_PRICELIST_GLADE_PATH = "/org/ceteca/explica/client/gui/common/explicapricelist.glade";
    
	
    
    
    
    
    /**
     * 
     * 
     * 
     * Path to the explica installed modules configuration file.
     */
    public static final String EXPLICA_MODULES_CONFIG_FILE = "resources";
    /**
     * Path to the explica modules directory.
     */
    public static final String EXPLICA_MODULES_DIR = "modules";
    /**
     * Path to the explica result messages properties file.
     */
    public static final String EXPLICA_MESSAGES_PROPERTIES_FILE = "/org/ceteca/explica/core/explicaCore-messages.properties";
    /**
     * Path to the explica log configuration file.
     */
    public static final String EXPLICA_LOG_CONFIG_FILE = "/org/ceteca/explica/log4j.xml";
    /**
     * Path to the explica default log directory.
     */
    public static final String EXPLICA_LOG_DIR = "logs";
    
    /* ----------------------------------------------------------------------
     *          EXPLICA LOG CONFIGURATION PROPERTIES 
     * ---------------------------------------------------------------------- */
    /**
     * Category of the logging system for the Explica core module.
     */
    public static final String EXPLICA_LOG_CATEGORY = "ExplicaLog";
    
    /* -----------------------------------------------------------------------
     *                          LOG MESSAGES:
     * Constants with the messages strings used for logging.
     * ----------------------------------------------------------------------- */
    /**
     * Message for logging the glade configuration file path.
     */
    public static final String EXPLICA_LOG_GLADEPATH = "The explica core interface configuration file has been found at this path: %s";
    /**
     * Message for logging the resources directory path.
     */
    public static final String EXPLICA_LOG_RESOURCESPATH = "The resources directory for the explica core interface is: %s";
    /**
     * Message for logging an error getting the areas for building the explica core GUI.
     */
    public static final String EXPLICA_LOG_ERROR_GETTING_AREAS = "Cannot get the list of available areas from the server!";
    /**
     * Message for logging an error accessing a module's data.
     */
    public static final String EXPLICA_LOG_ERROR_GETTING_MODULE = "Cannot access the data of the module! The module is empty!";
    /**
     * Message for logging the module glade configuration file path.
     */
    public static final String EXPLICA_LOG_MODULE_GLADEPATH = "The explica module interface configuration file has been found at this path: %s";
    /**
     * Message for logging an error accessing a module's data.
     */
    public static final String EXPLICA_LOG_MODULE_NOT_FOUND = "Cannot find the module: %s!";
    /**
     * Message for logging an error accessing a module's data.
     */
    public static final String EXPLICA_LOG_ERROR_GETTING_MODULE_ICON = "Cannot find the module icon: %s!";
    /**
     * Message for logging the entity glade configuration file path.
     */
    public static final String EXPLICA_LOG_ENTITY_GLADEPATH = "The explica entity interface configuration file has been found at this path: %s";
    /**
     * Message for logging an error accessing an entity's data.
     */
    public static final String EXPLICA_LOG_ENTITY_NOT_FOUND = "Cannot find the entity: %s!";
    /**
     * Message for logging an error accessing an entity's data.
     */
    public static final String EXPLICA_LOG_ERROR_GETTING_ENTITY = "Cannot access the data of the entity! The entity is empty!";
    /**
     * Message for logging an error accessing an entity's data.
     */
    public static final String EXPLICA_LOG_ERROR_GETTING_ENTITY_ICON = "Cannot find the entity icon: %s!";
    /**
     * Message for logging a new entity added event.
     */
    public static final String EXPLICA_LOG_ADD_ENTITY = "Adding a new entity button to the toolbar for the entity: %s";
    /**
     * Message for logging the path of the local version of the Module config file DTD used.
     */
    public static final String EXPLICA_LOG_RESOLVE_DTD = "Resolving Module configuration DTD file to its local version placed at: %s!";
    /**
     * Message for logging an error during the DTD Resolution.
     */
    public static final String EXPLICA_LOG_RESOLVE_DTD_ERROR = "Error resolving Module configuration DTD file to its local version. No DTD could be found!";
    
    /* -----------------------------------------------------------------------
     *                          WIDGETS NAMES:
     * Constants with the names of the widgets used in the core GUI.
     * ----------------------------------------------------------------------- */
    /** Name of the Shell widget for the Explica initializing window */
    public static final String EXPLICA_INIT_WINDOW_NAME = "windowExplicaInit";
    /** Name of the ProgressBar widget showed in the Explica initializing window */
    public static final String EXPLICA_INIT_PROGRESSBAR_NAME = "progressbarExplicaInit";
    /** Name of the StatusBar widget showed in the Explica initializing window */
    public static final String EXPLICA_INIT_STATUSBAR_NAME = "statusbarExplicaInit";
    /** Name of the Image widget showed in the Explica initializing window */
    public static final String EXPLICA_INIT_IMAGE_NAME = "imageExplicaInit";
    
    
    /** Name of the TabFolder widget that will contain all the area folders */
    public static final String EXPLICA_AREAS_TABFOLDER_NAME = "notebookExplicaMainAreas";
    /** Name of the Composite widget that will contain the selected area contents */
    public static final String EXPLICA_AREA_PANEL_NAME = "panelExplicaMainArea";
    /** Name of the Composite widget that will contain the module contents */
    public static final String EXPLICA_MODULE_PANEL_NAME = "panelExplicaMainModules";
    /** Name of the ToolBar widget that will contain the buttons for the module entities */
    public static final String EXPLICA_MODULE_ENTITITES_TOOLBAR_NAME = "toolBarExplicaModuleEntities";
    
    /** Name of the Shell widget for the Explica main window */
    public static final String EXPLICA_MAIN_WINDOW_NAME = "windowExplicaMain";
    /** Name of the Composite widget of the right side of the main screen */
    public static final String EXPLICA_MAIN_LEFT_PANEL_NAME = "panelExplicaMainLeft";
    /** Name of the Composite widget of the right side of the main screen */
    public static final String EXPLICA_MAIN_RIGHT_PANEL_NAME = "panelExplicaMainRight";
    
    /** Name of the Combo widget that will contain all the areas */
    public static final String EXPLICA_AREAS_COMBO_NAME = "comboboxExplicaMainAreas";

    /** Name of the Button widget that will be created for launching a module */
    public static final String EXPLICA_MODULE_BUTTON_NAME = "buttonExplicaMainModule";
    /** Name of the Composite widget that will contain all the module buttons */
    public static final String EXPLICA_MODULES_PANEL_NAME = "panelExplicaMainModules";
    /** Name of the Composite widget that will contain all the module contents */
    public static final String EXPLICA_MODULE_CONTENTS_PANEL_NAME = "vboxExplicaMainModule";
    /** Name of the ToolBar widget that will contain all the entity buttons */
    public static final String EXPLICA_MODULE_ENTITIES_TOOLBAR_NAME = "toolbarExplicaMainEntities";
    
    /** Name of the Composite widget that will be showed when no module has been selected */
    public static final String EXPLICA_MODULE_EMPTY_PANEL_NAME = "panelExplicaMainModules_Empty";
    
    /** Name of the Button widget that will be created for launching an entity */
    public static final String EXPLICA_ENTITY_BUTTON_NAME = "buttonExplicaMainEntity";
    
    /** Name of the Composite widget that will contain all the entity data */
    public static final String EXPLICA_ENTITY_PANEL_NAME = "panelExplicaMainEntity";
    /** Name of the Composite widget that will be showed when no entity has been selected */
    public static final String EXPLICA_ENTITY_EMPTY_PANEL_NAME = "panelExplicaMainEntity_Empty";
    /** Name of the Composite widget that will contain all the entity contents */
    public static final String EXPLICA_ENTITY_CONTENTS_PANEL_NAME = "vboxExplicaMainEntity";
    /** Name of the ToolBar widget that will contain all the default operations supported 
     * for the selected entity */
    public static final String EXPLICA_ENTITY_TOOLBAR_NAME = "toolbarExplicaEntity";
    /** Name of the ToolItem widget that will add a new entity */
    public static final String EXPLICA_ENTITY_TOOLITEM_ADD_NAME = "toolbuttonExplicaEntityAdd";
    /** Name of the ToolItem widget that will sekect a new subentity */
    public static final String EXPLICA_ENTITY_TOOLITEM_SELECT_NAME = "toolbuttonExplicaEntitySelect";
    /** Name of the ToolItem widget that will delete an entity */
    public static final String EXPLICA_ENTITY_TOOLITEM_DEL_NAME = "toolbuttonExplicaEntityDel";
    /** Name of the ToolItem widget that will show an entity */
    public static final String EXPLICA_ENTITY_TOOLITEM_VIEW_NAME = "toolbuttonExplicaEntityView";
    /** Name of the ToolItem widget that will edit an entity */
    public static final String EXPLICA_ENTITY_TOOLITEM_EDIT_NAME = "toolbuttonExplicaEntityEdit";
    /** Name of the ToolItem widget that will print an entity */
	public static final String EXPLICA_ENTITY_TOOLITEM_NEW_NAME = "toolbuttonExplicaEntityNew";
	
    public static final String EXPLICA_ENTITY_TOOLITEM_PRINT_NAME = "toolbuttonExplicaEntityPrint";
    /** Name of the ToolItem widget panel that will hold the searching engine for an entity */
    public static final String EXPLICA_ENTITY_TOOLITEM_SEARCH_PANEL_NAME = "toolitemExplicaEntitySearchPanel";
    /** Name of the ToolItem widget that will search for (go to) an entity */
    public static final String EXPLICA_ENTITY_TOOLITEM_GOTO_NAME = "toolbuttonExplicaEntitySearch";
    /** Name of the Text widget that will contain the searched value */
    public static final String EXPLICA_ENTITY_SEARCH_TEXT_NAME = "entryExplicaEntitySearch";
    /** Name of the Combo widget that will contain all the searchable fields for the entity */
    public static final String EXPLICA_ENTITY_SEARCH_COMBO_NAME = "comboboxExplicaEntitySearchIn";
    /** Name of the Tree widget that will contain all the default data showed for the entity */
    public static final String EXPLICA_ENTITY_TREE_NAME = "tableExplicaMainEntity";
    /** Name of the TreeItem widget that will show the data of a registry (item) of the entity */
    public static final String EXPLICA_ENTITY_TREEITEM_NAME = "treeItemExplicaMainEntity";
    /** Name of the Tree widget that will contain all the extension fields for the entity */
    public static final String EXPLICA_ENTITY_EXTENSION_CATALOG_NAME = "treeEntityExtensionCatalog";
    /** Text of the extension field id column of the entity extension catalog */    
    public static final String EXPLICA_ENTITY_EXTENSION_CATALOG_ID_COLUMN = "Extension Field";
    /** Text of the extension field value column of the entity extension catalog */    
    public static final String EXPLICA_ENTITY_EXTENSION_CATALOG_VALUE_COLUMN = "Extension Value";
    /** Text of the extension field type column of the entity extension catalog */    
    public static final String EXPLICA_ENTITY_EXTENSION_CATALOG_TYPE_COLUMN = "Extension Field Type";
    /** Name of the TreeItem widget that will show the data of an extension field of the entity */
    public static final String EXPLICA_ENTITY_EXTENSION_TREEITEM_NAME = "treeItemEntityExtension";
    

    
    
    /** Name of the Subentity Selection Dialog widget */
    public static final String EXPLICA_SUBENTITY_SELECTION_DIALOG_NAME = "dialog_entitySelection";
    /** Name of the Select Button widget that will select a subentity from the subentity selection dialog */
    public static final String EXPLICA_SUBENTITY_SELECTION_SELECT_BUTTON_NAME = "buttonEntitySelectionSelect";
    /** Name of the Select Button widget that will select a subentity from the subentity selection dialog */
    public static final String EXPLICA_SUBENTITY_SELECTION_CANCEL_BUTTON_NAME = "buttonEntitySelectionCancel";
    
    /** Name of the Subentity Multiple Selection Panel widget */
    public static final String EXPLICA_SUBENTITY_MULTISELECTION_PANEL_NAME = "vboxSubentityMultiSelection";
    /** Name of the Subentity Multiple Selection Toolbar widget */
    public static final String EXPLICA_SUBENTITY_MULTISELECTION_TOOLBAR_NAME = "toolbar_entityMultiSelection";
    /** Name of the Subentity Multiple Selection Table widget */
    public static final String EXPLICA_SUBENTITY_MULTISELECTION_TABLE_NAME = "table_selectedSubentities";
    /** Name of the Subentity Multiple Selection Add button widget */
    public static final String EXPLICA_SUBENTITY_MULTISELECTION_ADD_BUTTON_NAME = "toolbuttonSubentityAdd";
    /** Name of the Subentity Multiple Selection Delete button widget */
    public static final String EXPLICA_SUBENTITY_MULTISELECTION_DEL_BUTTON_NAME = "toolbuttonSubentityDel";
    /** Name of the Subentity Multiple Selection View button widget */
    public static final String EXPLICA_SUBENTITY_MULTISELECTION_VIEW_BUTTON_NAME = "toolbuttonSubentityView";
    /** Name of the Subentity Multiple Selection Edit button widget */
    public static final String EXPLICA_SUBENTITY_MULTISELECTION_EDIT_BUTTON_NAME = "toolbuttonSubentityEdit";
    
    /** Name of the Entity Edition Save button widget */
    public static final String EXPLICA_ENTITYEDITION_SAVE_BUTTON_NAME = "buttonEntityEditionSave";
    /** Name of the Entity Edition Undo button widget */
    public static final String EXPLICA_ENTITYEDITION_UNDO_BUTTON_NAME = "buttonEntityEditionUndo";
    /** Name of the Entity Edition Cancel button widget */
    public static final String EXPLICA_ENTITYEDITION_CANCEL_BUTTON_NAME = "buttonEntityEditionCancel";
    

    
    /* -----------------------------------------------------------------------
     *                          HANDLERS NAMES:
     * Constants with the names of the handlers used in the core GUI to manage events.
     * ----------------------------------------------------------------------- */
    /** Name of the handler for managing the clicked event of module buttons */
    public static final String EXPLICA_MODULE_BUTTON_CLICKED_HANDLER = "on_moduleButton_clicked";
    /** Name of the handler for managing the clicked event of entity buttons */
    public static final String EXPLICA_ENTITY_BUTTON_CLICKED_HANDLER = "on_entityButton_clicked";
    /** Name of the handler for managing the change selection event of areas combo */
    public static final String EXPLICA_AREA_COMBO_CHANGED_HANDLER = "on_areaCombo_changed";
    /** Name of the handler for managing the change selected item event of entity tree */
    public static final String EXPLICA_ENTITY_SELECTED_HANDLER = "on_entity_selected";
    /** Name of the handler for managing the double click on an item event of entity tree */
    public static final String EXPLICA_ENTITY_DOUBLECLICKED_HANDLER = "on_entity_doubleclicked";
    /** Name of the handler for managing the clicked event of entity add buttons */
    public static final String EXPLICA_ENTITY_ADD_BUTTON_CLICKED_HANDLER = "on_entityAddButton_clicked";
    /** Name of the handler for managing the clicked event of entity select buttons */
    public static final String EXPLICA_ENTITY_SELECT_BUTTON_CLICKED_HANDLER = "on_entitySelectButton_clicked";
    /** Name of the handler for managing the clicked event of entity delete buttons */
    public static final String EXPLICA_ENTITY_DEL_BUTTON_CLICKED_HANDLER = "on_entityDelButton_clicked";
    /** Name of the handler for managing the clicked event of entity edit buttons */
    public static final String EXPLICA_ENTITY_EDIT_BUTTON_CLICKED_HANDLER = "on_entityEditButton_clicked";
    /** Name of the handler for managing the clicked event of entity view buttons */
    public static final String EXPLICA_ENTITY_VIEW_BUTTON_CLICKED_HANDLER = "on_entityViewButton_clicked";
    /** Name of the handler for managing the clicked event of entity print buttons */
    public static final String EXPLICA_ENTITY_PRINT_BUTTON_CLICKED_HANDLER = "on_entityPrintButton_clicked";
    /** Name of the handler for managing the clicked event of entity search (go to) buttons */
    public static final String EXPLICA_ENTITY_GOTO_BUTTON_CLICKED_HANDLER = "on_entityGotoButton_clicked";
    /** Name of the handler for managing the close event of subentity selection dialog */
    public static final String EXPLICA_SUBENTITY_SELECTION_CLOSE_HANDLER = "on_entitySelection_close";
    /** Name of the handler for managing the clicked event of subentity selection (magnifying glass) buttons */
    public static final String EXPLICA_SUBENTITY_SELECTION_CLICKED_HANDLER = "on_entitySelectionButton_clicked";
    /** Name of the handler for managing the clicked event of subentity selection select buttons */
    public static final String EXPLICA_SUBENTITY_SELECTION_SELECT_CLICKED_HANDLER = "on_entitySelectionSelectButton_clicked";
    /** Name of the handler for managing the clicked event of subentity selection cancel buttons */
    public static final String EXPLICA_SUBENTITY_SELECTION_CANCEL_CLICKED_HANDLER = "on_entitySelectionCancelButton_clicked";
    /** Name of the handler for managing the clicked event of edit entity Save buttons*/
    public static final String EXPLICA_ENTITY_EDITION_SAVE_BUTTON_CLICKED_HANDLER = "on_entityEditionSaveButton_clicked";
    /** Name of the handler for managing the clicked event of edit entity Cancel buttons*/
    public static final String EXPLICA_ENTITY_EDITION_CANCEL_BUTTON_CLICKED_HANDLER = "on_entityEditionCancelButton_clicked";
    /** Name of the handler for managing the clicked event of edit entity Undo buttons*/
    public static final String EXPLICA_ENTITY_EDITION_UNDO_BUTTON_CLICKED_HANDLER = "on_entityEditionUndoButton_clicked";
    /** Name of the handler for managing the clicked event of subentity multiple selection Add button */
    public static final String EXPLICA_SUBENTITY_MULTISELECTION_ADD_CLICKED_HANDLER = "on_entityMultiSelectionAddButton_clicked";
    /** Name of the handler for managing the clicked event of subentity multiple selection Delete button */
    public static final String EXPLICA_SUBENTITY_MULTISELECTION_DEL_CLICKED_HANDLER = "on_entityMultiSelectionDelButton_clicked";
    /** Name of the handler for managing the clicked event of subentity multiple selection View button */
    public static final String EXPLICA_SUBENTITY_MULTISELECTION_VIEW_CLICKED_HANDLER = "on_entityMultiSelectionViewButton_clicked";
    /** Name of the handler for managing the clicked event of subentity multiple selection Edit button */
    public static final String EXPLICA_SUBENTITY_MULTISELECTION_EDIT_CLICKED_HANDLER = "on_entityMultiSelectionEditButton_clicked";
    
	public static final String EXPLICA_ENTITY_NEW_BUTTON_CLICKED_HANDLER = "on_entityNewButton_clicked";
	
	
    /**
     * Name of the XML module configuration file.
     */ 
    public static final String EXPLICA_MODULE_CONFIG_FILENAME = "moduleConfig.xml";
//    public static final String EXPLICA_MODULE_CONFIG_FILENAME = "moduleConfig.properties";
    
    
    /* ----------------------------------------------------------------------
     *           CONSTANTS WITH THE NAMES OF THE GUI ELEMENTS
     *           FOR THE BARCODE TYPE ENTITY
     * ---------------------------------------------------------------------- */
	/** Dialog name of the Barcode Type edition dialog window */
    public static final String EDIT_BARCODETYPE_DIALOG_NAME = "dialogBarcodeType";
    /** Barcode type id widget's name from the barcode type edition panel */
    public static final String EDIT_BARCODETYPE_ID_WIDGETNAME = "entryBarcodeTypeId";
    /** Barcode type description widget's name from the barcode type edition panel */
    public static final String EDIT_BARCODETYPE_DESCRIPTION_WIDGETNAME = "textviewBarcodeTypeDescription";
    
    /* ----------------------------------------------------------------------
     *           CONSTANTS WITH THE NAMES OF THE GUI ELEMENTS
     *           FOR THE VAT TYPE ENTITY
     * ---------------------------------------------------------------------- */
	/** Dialog name of the VAT Type edition dialog window */
    public static final String EDIT_VATTYPE_DIALOG_NAME = "dialogVatType";
    /** VAT Type id widget's name from the VAT type edition panel */
    public static final String EDIT_VATTYPE_ID_WIDGETNAME = "entryVatTypeId";
    /** VAT Type description widget's name from the VAT type edition panel */
    public static final String EDIT_VATTYPE_DESCRIPTION_WIDGETNAME = "textviewVatTypeDescription";
    /** VAT Type tax percentage widget's name from the VAT type edition panel */
    public static final String EDIT_VATTYPE_TAXPERCENTAGE_WIDGETNAME = "entryVatTypeTaxPercentage";
    /** VAT Type equivalence surchage percentage widget's name from the VAT type edition panel */
    public static final String EDIT_VATTYPE_RECEQUI_WIDGETNAME = "entryVatTypeRecEqui";
    

    
    /* -----------------------------------------------------------------------
     *                          ENTITY NAMES:
     * Constants with the names of the installed entities defined in the 
     * warehouse module and available for subentity selection dialog 
     * (magnifying glass buttons).
     * ----------------------------------------------------------------------- */
    /** Name of the Barcode Type entity */
    public static final String EXPLICA_ENTITY_BARCODETYPE_ID = "BarcodeType";
    /** Name of the VAT Type entity */
    public static final String EXPLICA_ENTITY_VATTYPE_ID = "VatType";

    /** Name of the Country entity */
    public static final String EXPLICA_ENTITY_COUNTRY_ID = "Country";
    /** Name of the State entity */
    public static final String EXPLICA_ENTITY_STATE_ID = "State";
    /** Name of the Flag entity */
    public static final String EXPLICA_ENTITY_FLAG_ID = "Flag";
    
	public static final String EXPLICA_ENTITY_CURRENCY_ID = "Currency";
	
	public static final String EXPLICA_ENTITY_RATE_ID = "Rate";
	
	public static final String EXPLICA_ENTITY_PRICELIST_ID = "PriceList";
	
	public static final String EXPLICA_ENTITY_PRICELISTLINE_ID = "PriceList Line";

	
    /* ----------------------------------------------------------------------
	   *           CONSTANTS WITH THE NAMES OF THE GUI ELEMENTS
	   *           FOR THE CURRENCY ENTITY
	   * ---------------------------------------------------------------------- */
	public static final String EDIT_CURRENCY_DIALOG_NAME = "dialogCurrency";

	public static final String EDIT_CURRENCY_CODE_WIDGETNAME = "entryCurrencyCode";

	public static final String EDIT_CURRENCY_DESCRIPTION_WIDGETNAME = "entryCurrencyDescription";

	public static final String EDIT_CURRENCY_CONVERSIONRATE_WIDGETNAME = "entryCurrencyConversionRate";

	public static final String EDIT_CURRENCY_FLAG_WIDGETNAME = "comboCurrencyFlag";

	public static final String EDIT_CURRENCY_LASTUPDATE_WIDGETNAME = "calendarCurrencyLastUpdate";

	public static final String EDIT_CURRENCY_ISOCODE_WIDGETNAME = "entryCurrencyIsoCode";

	public static final String EDIT_CURRENCY_IMAGEFLAG_WIDGETNAME = "imageCurrencyFlag";

	
	
    /** Name of the handler for managing the clicked event of combo flag selection*/
	public static final String EXPLICA_FLAG_SELECTION_CLICKED_HANDLER = "on_comboFlag_clicked";

	
	
    /* ----------------------------------------------------------------------
	   *           CONSTANTS WITH THE NAMES OF THE GUI ELEMENTS
	   *           FOR THE PRICE LIST ENTITY
	   * ---------------------------------------------------------------------- */
	


	public static final String EDIT_PRICELILST_DIALOG_NAME = "dialogPriceList";

	public static final String EDIT_PRICELIST_CODE_WIDGETNAME = "entryPriceListCode";

	public static final String EDIT_PRICELIST_DESCRIPTION_WIDGETNAME = "entryPriceListDescription";

	public static final String EDIT_PRICELIST_FROMDATE_WIDGETNAME = "entryPriceListFromDate";

	public static final String EDIT_PRICELILST_TODATE_WIDGETNAME = "entryPriceListToDate";

	public static final String EDIT_PRICELIST_TAXEXINC_WIDGETNAME = "buttonPriceListTaxesInc";

	public static final String EDIT_PRICELIST_PRICELISTLINE_PANEL_WIDGETNAME = "vboxPriceListLines";

	public static final String EDIT_PRICELIST_PRICELISTLINE_TABLE_WIDGETNAME = "treePriceListPriceListLine";

	public static final String EDIT_PRICELIST_BUTTONSELECTFROMDATE_WIDGETNAME = "buttonPriceListFromDate";

	public static final String EDIT_PRICELIST_BUTTONSELECTTODATE_WIDGETNAME = "buttonPriceListToDate";
	
	
    /* ----------------------------------------------------------------------
	   *           CONSTANTS WITH THE NAMES OF THE GUI ELEMENTS
	   *           FOR THE PRICE LIST LINE ENTITY
	   * ---------------------------------------------------------------------- */


	public static final String EXPLICA_PRICELISTLINE_DIALOG_NAME = "dialogPriceListLine";

	public static final String EDIT_PRICELISLILNE_CODE_WIDGETNAME = "entryPriceListLineId";

	public static final String EDIT_PRICELISTLINE_PRODUCT_WIDGETNAME = "entryPriceListLineProduct";

	public static final String EDIT_PRICELISTLINE_PRICE_WIDGETNAME = "entryPriceListLinePrice";

	public static final String EDIT_PRICELISTLINE_DISCOUNT_WIDGETNAME = "entryPriceListLineDiscount";

	public static final String EDIT_PRICELISTLINE_SELECT_PRODUCT_BUTTON_WIDGETNAME = "buttonPriceListLineProduct";

	public static final String EDIT_PRICELISTLINE_PRICELIST_WIDGETNAME = "entryPriceListLinePriceList";

	public static final String EDIT_PRICELISTLINE_SELECT_PRICELIST_BUTTON_WIDGETNAME = "buttonPriceListLinePriceList";

	public static final Object EXPLICA_URL_YAHOO_MAPS = "http://local.yahooapis.com/MapsService/V1/mapImage";

	public static final String EXPLICA_KEY_YAHOO_APP = "XGaN1knV34Gz0qaARMX3vbLuE8FtVwo9pT7ilqTp9CmE0qZCYtIAciCf6kvQ0Q--";


	public static final Object EXPLICA_URL_GOOGLE_MAPS = "http://maps.google.com/staticmap"	;

	public static final String EXPLICA_GOOGLE_APP_KEY = "ABQIAAAAaFf0YQOIYX1vHdD0Ye5UIxTvZsSatvsGRKkohdxCXjqkODJGuRTpCXvvov-_B6TE5Gf4unyplmgtGA";

	public static final Object EXPLICA_URL_GOOGLE_GEOCODE = "http://maps.google.com/maps/geo";

	public static final int GOOGLE_MAPS_DEFAULT_ZOOM = 13;

	public static final Dimension GOOGLE_MAPS_DEFAULT_SIZE = new Dimension(400,400);

	public static final String EXPLICA_DATE_SELECT_GLADE_PATH = "/org/ceteca/explica/client/gui/explicadateselect.glade";

	public static final String EXPLICA_DATE_SELECT_DIALOG_NAME = "dialogDateSelect";

	public static final String SELECT_DATE_CALENDAR_WIDGETNAME = "calendarDateSelect";

	public static final String SELECT_DATE_OK_BUTTON_WIDGETNAME = "okbuttonDateSelect";

	public static final String SELECT_DATE_CANCEL_BUTTON_WIDGETNAME = "cancelbuttonDateSelect";
	
	public static final String EXPLICA_VALUE_INPUT_GLADE_PATH = "/org/ceteca/explica/client/gui/explicavalueinput.glade";

	public static final String EXPLICA_VALUE_INPUT_DIALOG_NAME = "dialogValueInput";

	public static final String VALUE_INPUT_VALUE_WIDGETNAME = "entryValueInput";

	public static final String VALUE_INPUT_OK_BUTTON_WIDGETNAME = "okbuttonValueInput";

	public static final String VALUE_INPUT_CANCEL_BUTTON_WIDGETNAME = "cancelbuttonValueInput";

	public static final String COMMON_LOG_CONFIG_FILE = "/org/ceteca/explica/core/common/log4j.xml";








	
	








	


}
